Today, a business analyst working for a company may develop a statistical model that is used to help understand some aspect of the business. The model includes computational expressions that have to be executed by a computing system that runs a specialized application for such models. In some cases, the model may be very complex and the company may typically use an outside vendor (a quantitative analysis provider) to execute the model. The outside vendor provides a runtime environment in which to execute the model by way of custom software. However, the runtime environment is configured to execute computational expressions that are specific to the runtime environment. Thus any input to the runtime environment must be in a specific computer language/format that is recognized by the runtime environment. For example, if the outside vendor is MATLAB runtime environment, then the statistical model submitted for execution must be created and formatted using MATLAB runtime environment computational expressions such that the model can be executed in the MATLAB runtime environment. Likewise, if a different vendor is used to execute a statistical model, then the statistical model must be created and formatted using the computational expressions of that vendor. Otherwise, the statistical model is an invalid input and will not execute in the runtime environment of that vendor.
A business analyst may not be trained with respect to any particular runtime environment, however. To simplify the programming process, the business analyst may initially create a statistical model using, for example, the English language, pseudo-code, or flowcharts. The business analyst may then work with a software programmer that is trained with respect to a particular runtime environment and its particular programming language. The software programmer then creates a program of the model that complies with and uses computational expressions of the runtime environment.
At a later date, if the business analyst or the company decides that a new outside vendor should be used to execute statistical models, then the existing statistical models of the company will not function. That is because the new outside vendor most likely provides a different runtime environment (e.g., Python runtime environment) that requires a different language and executes models that require different computational expressions. Therefore, the existing statistical models will have to be re-programmed to conform to the computational expressions of the different runtime environment. The business analyst may have to work with the same software programmer, or a different software programmer, to create new programs of the existing models that use computational expressions of the new runtime environment.
A company may have many statistical models that have to be reprogrammed upon switching to a new outside vendor. The process of reprogramming the existing models is time consuming and costly. Reprogramming also consumes many resources (business analysts, software programmers, etc.). Furthermore, the reprogramming process will have to be repeated every time the company switches to a new outside vendor.